python语法 | 您所在的位置:网站首页 › python f字符串 版本 › python语法 |
老方法
将字符串与变量连接起来,比如想打印记录一个函数输入内容和输出内容的日志,一般方法有: 1、字符串相加 a = 'input:' + input + ',output:' + output2、使用 C 语言中的 % a = 'input:%s,output:%s' % (input, output)3、使用 format 方法 a = 'input:{},output:{}'.format(input, output)以上三种方法各有利弊: 1、字符串相加最大的缺点是代码不够简洁,尤其是变量名多的时候,会看到许许多多的单引号和双引号。 2、使用 % 和 format 的好处是,一个字符串是完整简洁的,让人一眼可以看出这个字符串的全局结构,只是抠出了几个变量来供填充。但是 % 的缺点是,当变量名多的时候,不知道哪个 % 对应的是哪个变量,还需要去数数。虽然 format 可以通过在 {} 中指定key来避免这个缺点,但是这会让代码变得很长,因为只要在{}指定的key,一定会在 format 的参数中再次出现一遍。 新方法(f-string)从Python 3.6开始,f-string是格式化字符串的一种很好的新方法。与其他格式化方式相比,它们不仅更易读,更简洁,不易出错,而且速度更快! 使用方法:1、在字符串前面加上 f。 2、在字符串内部,将需要连接的变量用 {} 括起来即可。 示例: a = f'input:{input},output:{output}' 特点1、综合了上面三种老方法的优点,代码简洁,且变量名多的时候,不需要去数数,也没有繁琐的单引号双引号 2、括号{}里面的变量,可以是字符串类型,也可以是整型、浮点型,或者是复杂类型,比如数组、词典等,会自动转换成成字符串形式。 3、括号{}里面还可以是函数,比如 f'数组a的长度为:{len(a)}'。一句话,只要是位于 {} 中的,都会当做 python 代码来执行。但里面只能写表达式,不能写执行语句如{a=2}之类的。 4、f-string在本质上并不是字符串常量,而是一个在运行时运算求值的表达式,速度比上面三种老方法要块。 因此对于Python3.6及以后的版本,推荐使用f-string进行字符串格式化。 |
CopyRight 2018-2019 实验室设备网 版权所有 |